#include "cMacro.h"
#include "DirectInput.h"
#include "d3dApp.h"
#include "GfxStats.h"
#include "cPlayGame.h"
#include "cCamera.h"

class cGameDemo : public cD3DApplication
{
public:
	cGameDemo(HINSTANCE hInstance, std::string winCaption, D3DDEVTYPE devType, DWORD requestedVP);
	~cGameDemo();

	LRESULT msgProc(UINT msg, WPARAM wParam, LPARAM lParam) override;

	bool checkDeviceCaps();
	void onLostDevice();
	void onResetDevice();
	void updateScene(float dt);
	void drawScene(float dt);
	void setupProjMatrix();
	void setupLight(float dt);
	void drawText(int x, int y, const char* txt, D3DCOLOR color);
	void onLight();
	void offLight();

private:
	POINT							mMouse;
	cCamera					mCamera;
	D3DXMATRIX			mProj;
	cPlayGame				mPlayGame;
	ID3DXFont*				mFont;
	GfxStats*					mGfxStats;
	LPD3DXSPRITE		mpSprite;
};